/*
	Copyright (C) 2013 Pontificia Universidad Catolica del Peru
	contact: http://avatar.inf.pucp.edu.pe/realidad-aumentada/
	address contact: Av. Universitaria 1801, San Miguel, Lima-Peru.
	
	This file is part of UbicAR PUCP.

	This program is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	This program is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
	along with This program.  If not, see <http://www.gnu.org/licenses/>.
*/
/*
	Author: Pedro Carrión Castagnola
	Pontificia Universidad Catolica del Peru
	Direccion de Informatica Academica
	
	Modified by: Alvaro Roger Agüero Sánchez, Rodolfo Javier Galvez Meza
	Pontificia Universidad Catolica del Peru
	Departamento de Ingeniería
*/

package org.grupoavatar.guiaubicua;


import org.grupoavatar.guiaubicua.auxiliares.Usuario;
import org.grupoavatar.guiaubicua.auxiliares.Utiles;
import org.grupoavatar.guiaubicua.entidades.ListaTextAdapter;
import org.grupoavatar.guiaubicua.entidades.ListaTextRow;
import org.grupoavatar.guiaubicua.gestores.GestorConfiguracion;
import org.grupoavatar.guiaubicua.howto.Howto;

import com.actionbarsherlock.app.SherlockActivity;


import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.provider.Settings;
import android.view.View;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;

public class VAyuda extends SherlockActivity {
	
	public static VAyuda vAyuda;
	public static boolean debeReiniciar = false;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		
		vAyuda = this;
		
//		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.ayuda);
		//header
//		Button btnLogo = (Button) findViewById(R.id.btnLogo);
//		btnLogo.setOnClickListener(new View.OnClickListener() {
//			@Override
//			public void onClick(View v) {   
//				finish();
//			}
//		});
		//end-header
		getSherlock().getActionBar().setTitle(R.string.ayuda);
		
		ListaTextRow lista_ayuda[];
		
		if (Usuario.esValido) {
			ListaTextRow temp_lista_ayuda[] = {
					new ListaTextRow("Preguntas frecuentes"),
					new ListaTextRow("Cómo usar"),
					new ListaTextRow("Acerca de"),
					new ListaTextRow("Compártenos"),
					new ListaTextRow("Cuenta"),
					};
			lista_ayuda = temp_lista_ayuda;
		} else {
			ListaTextRow temp_lista_ayuda[] = {
					new ListaTextRow("Preguntas frecuentes"),
					new ListaTextRow("Cómo usar"),
					new ListaTextRow("Acerca de"),
					new ListaTextRow("Compártenos"),
					//new ListaTextRow("Créditos")
					};
			lista_ayuda = temp_lista_ayuda;
		}
		
		ListaTextAdapter adapter = new ListaTextAdapter(this,R.layout.listatext_row, lista_ayuda);
		ListView listA = (ListView) findViewById(R.id.lisAyuda);
		listA.setAdapter(adapter);
		listA.setVerticalFadingEdgeEnabled(true);
		listA.setOnItemClickListener(new OnItemClickListener() {
			@Override
			public void onItemClick(AdapterView<?> l, View v, int position, long id) {
				switch(position) {
					case 0:
						Dialog dialogPF = new Dialog(VAyuda.this);
						dialogPF.requestWindowFeature(Window.FEATURE_NO_TITLE);
						dialogPF.setContentView(R.layout.ayuda_pf_dialog);
						Button btnUbicaciones = (Button) dialogPF.findViewById(R.id.btnAyudaPfUbicacion);
						btnUbicaciones.setOnClickListener(new View.OnClickListener() {
							@Override
							public void onClick(View v) {
								startActivity(new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS));
							}
						});
						Button btnContacto = (Button) dialogPF.findViewById(R.id.btnAyudaPfContacto);
						btnContacto.setOnClickListener(new View.OnClickListener() {
							@Override
							public void onClick(View v) {
								Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
								emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "grupo_avatar@pucp.edu.pe" });  
								emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Guía Ubícua PUCP - Reporte de Error");  
								emailIntent.setType("plain/text");  
								startActivity(Intent.createChooser(emailIntent, "Enviar Correo con:"));  
							}
						});
						dialogPF.show();
						break;
					case 1:
						Intent i = new Intent(VInicial.getContext(), Howto.class);
						GestorConfiguracion.activity.startActivity(i);
						
						break;
					case 2:
						Dialog dialogAcerca = new Dialog(VAyuda.this);
						dialogAcerca.requestWindowFeature(Window.FEATURE_NO_TITLE);
						dialogAcerca.setContentView(R.layout.ayuda_acercade_dialog);
						dialogAcerca.show();
						break;
						
					case 3:
						Intent share = new Intent(Intent.ACTION_SEND);
						share.setType("text/plain");
						share.putExtra(Intent.EXTRA_TEXT, Utiles.compartirAplicacion());
						startActivity(Intent.createChooser(share, "Compartir vía"));
						break;
						
					case 4:
						final Dialog cuentaDialog = new Dialog(VAyuda.this);
						cuentaDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
						cuentaDialog.setContentView(R.layout.ayuda_cuenta_dialog);
						
						TextView txtCorreoAsociado = (TextView) cuentaDialog.findViewById(R.id.txtCorreoAsociado);
						txtCorreoAsociado.setText(Usuario.correo_actual);
						
						Button btnDesasociarCuenta = (Button) cuentaDialog.findViewById(R.id.btnDesasociarCuenta);
						btnDesasociarCuenta.setOnClickListener(new View.OnClickListener() {
							@Override
							public void onClick(View v) {
								Usuario.desasociarCuenta();
								VInicial.validarBotonAsociar();
								cuentaDialog.dismiss();
								VAyuda.vAyuda.finish();
								startActivity(getIntent());
							}
						});
						cuentaDialog.show();
						break;
				}
			}
		});
	}

	@Override
	protected void onResume() {
		super.onResume();
		if (debeReiniciar) {
			VAyuda.vAyuda.finish();
			startActivity(getIntent());
			debeReiniciar = false;
		}
	}
	
}
